Storage systems are often configured to include multiple storage tiers, with different ones of the tiers providing different levels of input-output (IO) performance or other characteristics. In such systems, data may be moved from one tier to another within a given storage system based on access frequency of the data or other factors.
These and other types of storage systems may incorporate one or more object stores. In an object store, data is exposed and managed in the form of objects instead of files or blocks. Different objects can include different amounts and types of unstructured data but each object is identified by a globally unique identifier. Objects can therefore be stored in a flat address space such as a storage pool. The unique identifier of a given object allows an application or other requesting entity to retrieve that object without needing to know the physical location in which the object is stored. Accordingly, object stores abstract away complexities associated with lower level storage functions. Object stores are commonly utilized in cloud storage environments and numerous other storage applications.
Despite the advantages associated with storage tiering and object stores, additional improvements are needed in terms of data access performance and scalability, particularly for storage implemented in information processing systems that include potentially large numbers of compute nodes.